home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
015
/
as.arc
/
PS.BAS
next >
Wrap
BASIC Source File
|
1986-03-01
|
8KB
|
258 lines
1000 REM ********************************************************************
1020 REM * *
1040 REM * This program sets up various operating modes on the Epson *
1060 REM * FX-85 printer from menus displayed on the console output. *
1080 REM * This program can easily be changed for the wider FX-185. *
1100 REM * Only text modes are addressed; graphics may be added in a *
1120 REM * future version. *
1140 REM * Author : T. Kilian *
1160 REM * Date : Dec. 15, 1985 *
1180 REM * Version: 2.0 March 1, 1986 *
1200 REM * *
1220 REM ********************************************************************
1240 REM
1260 REM
1280 WIDTH 40
1300 CLS
1320 REM ** PRINT TITLE & MAIN MENU **
1340 PRINT "EPSON FX-85 PRINTER SETUP - MAIN MENU
1360 PRINT
1380 PRINT
1400 PRINT " 1 - CHARACTER FONT
1420 PRINT
1440 PRINT " 2 - ENHANCEMENTS
1460 PRINT
1480 PRINT " 3 - PAGE MARGINS
1500 PRINT
1520 PRINT " 4 - LINE SPACING
1540 PRINT
1560 PRINT " 5 - REINITIALIZE
1580 PRINT
1600 PRINT " 6 - TRY IT
1620 PRINT
1640 PRINT " 9 - RETURN TO DOS
1660 PRINT
1680 PRINT
1700 PRINT " Enter selection : "
1720 GOSUB 6020
1740 IF ITEM=1 THEN 1880
1760 IF ITEM=2 THEN 2560
1780 IF ITEM=3 THEN 3500
1800 IF ITEM=4 THEN 4800
1820 IF ITEM=5 THEN 5740
1840 IF ITEM=6 THEN 5800
1860 IF ITEM=9 THEN 6100 ELSE 1280
1880 REM ** CHARACTER FONT SELECTION ROUTINE **
1900 CLS
1920 REM ** PRINT SUB-MENU **
1940 PRINT " CHARACTER FONT SELECTION MENU
1960 PRINT
1980 PRINT
2000 PRINT " 1 - PICA (default)
2020 PRINT
2040 PRINT " 2 - NEAR LETTER QUALITY
2060 PRINT
2080 PRINT " 3 - ELITE
2100 PRINT
2120 PRINT " 4 - ITALIC
2140 PRINT
2160 PRINT " 9 - RETURN TO MAIN MENU
2180 PRINT
2200 PRINT
2220 PRINT " Enter selection : "
2240 GOSUB 6020
2260 IF ITEM=1 THEN 2360
2280 IF ITEM=2 THEN 2400
2300 IF ITEM=3 THEN 2440
2320 IF ITEM=4 THEN 2480
2340 IF ITEM=9 THEN 1280 ELSE 2220
2360 LPRINT CHR$(27)"P"
2380 GOTO 5960
2400 LPRINT CHR$(27)"x"CHR$(1)
2420 GOTO 5960
2440 LPRINT CHR$(27)"M"
2460 GOTO 5960
2480 LPRINT CHR$(27)"4"
2500 GOTO 5960
2520 LPRINT CHR$(27)"j"CHR$(72)
2540 GOTO 1280
2560 REM ** ENHANCEMENTS SELECTION ROUTINE **
2580 CLS
2600 REM ** PRINT ENHANCEMENTS SUB-MENU **
2620 PRINT " PRINT ENHANCEMENTS SUB-MENU"
2640 PRINT
2660 PRINT
2680 PRINT " 1 - UNDERLINED
2700 PRINT
2720 PRINT " 2 - EMPHASIZED
2740 PRINT
2760 PRINT " 3 - DOUBLE-STRIKE
2780 PRINT
2800 PRINT " 4 - EXPANDED
2820 PRINT
2840 PRINT " 5 - COMPRESSED
2860 PRINT
2880 PRINT " 6 - SUPERSCRIPT
2900 PRINT
2920 PRINT " 7 - SUBSCRIPT
2940 PRINT
2960 PRINT " 9 - RETURN TO MAIN MENU
2980 PRINT
3000 PRINT
3020 PRINT " Enter selection : "
3040 GOSUB 6020
3060 IF ITEM=1 THEN 3220
3080 IF ITEM=2 THEN 3260
3100 IF ITEM=3 THEN 3300
3120 IF ITEM=4 THEN 3340
3140 IF ITEM=5 THEN 3380
3160 IF ITEM=6 THEN 3420
3180 IF ITEM=7 THEN 3460
3200 IF ITEM=9 THEN 1280 ELSE 2560
3220 LPRINT CHR$(27)CHR$(45)CHR$(1)
3240 GOTO 5960
3260 LPRINT CHR$(27)"E"
3280 GOTO 5960
3300 LPRINT CHR$(27)"G"
3320 GOTO 5960
3340 LPRINT CHR$(27)"W"CHR$(1)
3360 GOTO 5960
3380 LPRINT CHR$(27)CHR$(15)
3400 GOTO 5960
3420 LPRINT CHR$(27)"S"CHR$(0)
3440 GOTO 5960
3460 LPRINT CHR$(27)"S"CHR$(1)
3480 GOTO 5960
3500 REM ** PAGE MARGIN SETUP ROUTINE **
3520 CLS
3540 ITEM = 0
3560 REM ** PRINT SUB-MENU **
3580 PRINT " PAGE MARGIN SUB-MENU
3600 PRINT
3620 PRINT
3640 PRINT " 1 - RIGHT MARGIN
3660 PRINT
3680 PRINT " 2 - LEFT MARGIN
3700 PRINT
3720 PRINT " 3 - SKIP OVER PERFORMATION
3740 PRINT
3760 PRINT " 4 - PAGE LENGTH IN LINES
3780 PRINT
3800 PRINT " 5 - PAGE LENGTH IN INCHES
3820 PRINT
3840 PRINT " 9 - RETURN TO MAIN MENU
3860 PRINT
3880 PRINT
3900 PRINT " Enter selection : "
3920 GOSUB 6020
3940 IF ITEM=1 THEN 4060
3960 IF ITEM=2 THEN 4200
3980 IF ITEM=3 THEN 4340
4000 IF ITEM=4 THEN 4480
4020 IF ITEM=5 THEN 4640
4040 IF ITEM=9 THEN 1280
4060 INPUT "Enter size of new right margin : ",SIZE
4080 IF SIZE>0 AND SIZE<80 THEN 4160
4100 PRINT "ERROR -- Size is not between 0 and 80"
4120 INPUT "Press ENTER to continue ...",ITEM
4140 GOTO 3500
4160 LPRINT CHR$(27)"Q"CHR$(SIZE)
4180 GOTO 5960
4200 INPUT "Enter size of new left margin : ",SIZE
4220 IF SIZE>0 AND SIZE<80 THEN 4300
4240 PRINT "ERROR -- Size is not between 0 and 80"
4260 INPUT "Press ENTER to continue ...",ITEM
4280 GOTO 3500
4300 LPRINT CHR$(27)"l"CHR$(SIZE)
4320 GOTO 5960
4340 INPUT "Enter number of lines to be skipped : ",SIZE
4360 IF SIZE>0 AND SIZE<66 THEN 4440
4380 PRINT "ERROR -- Number of lines is not between 0 and 66
4400 INPUT "Press ENTER to continue ...",ITEM
4420 GOTO 3500
4440 LPRINT CHR$(27)"N"CHR$(SIZE)
4460 GOTO 5960
4480 PRINT "Enter new page length in lines"
4500 INPUT "(default length is 66) : ",SIZE
4520 IF SIZE>0 AND SIZE<128 THEN 4600
4540 PRINT "ERROR -- Length not between 1 & 127"
4560 INPUT "Press ENTER to continue ...",SIZE
4580 GOTO 3500
4600 LPRINT CHR$(27)"C"CHR$(SIZE)
4620 GOTO 5960
4640 PRINT "Enter new page length in inches"
4660 INPUT "(default length is ll) : ",SIZE
4680 IF SIZE>0 AND SIZE<23 THEN 4760
4700 PRINT "ERROR -- Length is not between 1 & 22"
4720 INPUT "Press ENTER to continue ... ",SIZE
4740 GOTO 3500
4760 LPRINT CHR$(27)"C"CHR$(0)CHR$(SIZE)
4780 GOTO 5960
4800 REM ** LINE SPACING SETUP ROUTINE **
4820 CLS
4840 REM ** PRINT SUB-MENU
4860 PRINT " LINE SPACING SUB-MENU"
4880 PRINT
4900 PRINT
4920 PRINT " 1 - 1/8 INCH
4940 PRINT
4960 PRINT " 2 - 7/72 INCH
4980 PRINT
5000 PRINT " 3 - 1/6 INCH (default)
5020 PRINT
5040 PRINT " 4 - n/72 INCH
5060 PRINT
5080 PRINT " 5 - n/216 INCH
5100 PRINT
5120 PRINT " 9 - RETURN TO MAIN MENU
5140 PRINT
5160 PRINT
5180 PRINT " Enter selection : "
5200 GOSUB 6020
5220 IF ITEM=1 THEN 5340
5240 IF ITEM=2 THEN 5380
5260 IF ITEM=3 THEN 5420
5280 IF ITEM=4 THEN 5460
5300 IF ITEM=5 THEN 5600
5320 IF ITEM=9 THEN 1280 ELSE 4800
5340 LPRINT CHR$(27)"0"
5360 GOTO 5960
5380 LPRINT CHR$(27)"1"
5400 GOTO 5960
5420 LPRINT CHR$(27)"2"
5440 GOTO 5960
5460 INPUT "Enter n (0 < n < 85) : ",SIZE
5480 IF SIZE>0 AND SIZE<86 THEN 5560
5500 PRINT "ERROR -- n is out of range"
5520 INPUT "Press ENTER to continue ... ",SIZE
5540 GOTO 4800
5560 LPRINT CHR$(27)"A"CHR$(SIZE)
5580 GOTO 5960
5600 INPUT "Enter n (0 < n < 256) :",SIZE
5620 IF SIZE>0 AND SIZE<256 THEN 5700
5640 PRINT "ERROR -- n is out of range"
5660 INPUT "Press ENTER to continue ...",SIZE
5680 GOTO 4800
5700 LPRINT CHR$(27)"3"CHR$(SIZE)
5720 GOTO 5960
5740 REM ** REINITIALIZE PRINTER **
5760 LPRINT CHR$(27)"@'
5780 GOTO 5960
5800 LPRINT "This is a sample line of text to verify the printer setup:"
5820 LPRINT "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
5840 LPRINT
5860 LPRINT
5880 LPRINT
5900 LPRINT
5920 LPRINT
5940 GOTO 1280
5960 REM ** PRINT A REVERSE LINE FEED **
5980 LPRINT CHR$(27)"j"CHR$(72)
6000 GOTO 1280
6020 REM ** GET A MENU SELECTION, RETURN A VALUE FOR "ITEM"
6040 K$=INKEY$:IF LEN(K$)=0 THEN 6040
6060 ITEM=ASC(K$)-48
6080 RETURN
6100 WIDTH 80
6120 END